#include <iostream>

using namespace std;

//compile: g++ staticUse.cpp staticMember.cpp -o staticUse.exe
int main(){
	// 函数的声明还可以放在这里
	void func();
	func();
	cout << "twice:" << endl;
	// func()执行了两次，但是输出的值是不一样的
	func();
	cout << endl;
	
	// 静态成员修饰 函数 和 全局变量
	void mem();
	extern int num;
	
	mem();
	cout << "extern num is " << num << endl;
	return 0;
}

void func(){
	// num 是静态变量， 只会初始化一次，第二次执行方法时，num不会初始化
	// 并且生命周期为整个程序的生命周期
	static int num = 10;
	cout << "the nums is " << num++ << endl;
	cout << "and then the nums is " << num << endl;
}